Make string setters safe for self-assignment. (#122745, Soeren Sandmann)
authorMatthias Clasen <maclas@gmx.de>
Fri, 7 Nov 2003 21:57:20 +0000 (21:57 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Fri, 7 Nov 2003 21:57:20 +0000 (21:57 +0000)
Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>

* gtk/gtkwindow.c (gtk_window_set_role):
* gtk/gtkwindow.c (gtk_window_set_title):
* gtk/gtkwidget.c (gtk_widget_set_name):
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title):
* gtk/gtkbutton.c (gtk_button_set_label): Make string setters
safe for self-assignment.  (#122745, Soeren Sandmann)

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkbutton.c
gtk/gtktreeviewcolumn.c
gtk/gtkwidget.c
gtk/gtkwindow.c

index 879c2d5175e25e8ab85ffb8dbb6ecdcc652b40ae..d5ede926460e8c41c01270f37115d497a74d002d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkwindow.c (gtk_window_set_role): 
+       * gtk/gtkwindow.c (gtk_window_set_title): 
+       * gtk/gtkwidget.c (gtk_widget_set_name): 
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
+       * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
+       safe for self-assignment.  (#122745, Soeren Sandmann)
+
 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
 
        * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
index 879c2d5175e25e8ab85ffb8dbb6ecdcc652b40ae..d5ede926460e8c41c01270f37115d497a74d002d 100644 (file)
@@ -1,3 +1,12 @@
+Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkwindow.c (gtk_window_set_role): 
+       * gtk/gtkwindow.c (gtk_window_set_title): 
+       * gtk/gtkwidget.c (gtk_widget_set_name): 
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
+       * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
+       safe for self-assignment.  (#122745, Soeren Sandmann)
+
 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
 
        * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
index 879c2d5175e25e8ab85ffb8dbb6ecdcc652b40ae..d5ede926460e8c41c01270f37115d497a74d002d 100644 (file)
@@ -1,3 +1,12 @@
+Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkwindow.c (gtk_window_set_role): 
+       * gtk/gtkwindow.c (gtk_window_set_title): 
+       * gtk/gtkwidget.c (gtk_widget_set_name): 
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
+       * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
+       safe for self-assignment.  (#122745, Soeren Sandmann)
+
 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
 
        * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
index 879c2d5175e25e8ab85ffb8dbb6ecdcc652b40ae..d5ede926460e8c41c01270f37115d497a74d002d 100644 (file)
@@ -1,3 +1,12 @@
+Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkwindow.c (gtk_window_set_role): 
+       * gtk/gtkwindow.c (gtk_window_set_title): 
+       * gtk/gtkwidget.c (gtk_widget_set_name): 
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
+       * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
+       safe for self-assignment.  (#122745, Soeren Sandmann)
+
 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
 
        * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
index 879c2d5175e25e8ab85ffb8dbb6ecdcc652b40ae..d5ede926460e8c41c01270f37115d497a74d002d 100644 (file)
@@ -1,3 +1,12 @@
+Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkwindow.c (gtk_window_set_role): 
+       * gtk/gtkwindow.c (gtk_window_set_title): 
+       * gtk/gtkwidget.c (gtk_widget_set_name): 
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
+       * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
+       safe for self-assignment.  (#122745, Soeren Sandmann)
+
 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
 
        * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
index ba8ffee66d077cbc69d37f6212fba2ba4051352e..ae80e4a8d6996b02fa92e1dbf3af030b1ca434e0 100644 (file)
@@ -1133,10 +1133,13 @@ void
 gtk_button_set_label (GtkButton   *button,
                      const gchar *label)
 {
-  g_return_if_fail (GTK_IS_BUTTON (button));
+  gchar *new_label;
   
+  g_return_if_fail (GTK_IS_BUTTON (button));
+
+  new_label = g_strdup (label);
   g_free (button->label_text);
-  button->label_text = g_strdup (label);
+  button->label_text = new_label;
   
   gtk_button_construct_child (button);
   
index 82d8b7a5396b426c7b6319aaa489c651450f3345..4e176ff5ccf147a14959c9577ae70f5c6dfb1f53 100644 (file)
@@ -2024,13 +2024,13 @@ void
 gtk_tree_view_column_set_title (GtkTreeViewColumn *tree_column,
                                const gchar       *title)
 {
+  gchar *new_title;
+  
   g_return_if_fail (GTK_IS_TREE_VIEW_COLUMN (tree_column));
 
+  new_title = g_strdup (title);
   g_free (tree_column->title);
-  if (title)
-    tree_column->title = g_strdup (title);
-  else
-    tree_column->title = NULL;
+  tree_column->title = new_title;
 
   gtk_tree_view_column_update_button (tree_column);
   g_object_notify (G_OBJECT (tree_column), "title");
index 7edaa571574fd3b524dbb69ed84916e85e4e3cb4..98b7c5c48a402875bf19257b686b9af56d63ae3d 100644 (file)
@@ -3929,11 +3929,13 @@ void
 gtk_widget_set_name (GtkWidget  *widget,
                     const gchar *name)
 {
-  g_return_if_fail (GTK_IS_WIDGET (widget));
+  gchar *new_name;
   
-  if (widget->name)
-    g_free (widget->name);
-  widget->name = g_strdup (name);
+  g_return_if_fail (GTK_IS_WIDGET (widget));
+
+  new_name = g_strdup (name);
+  g_free (widget->name);
+  widget->name = new_name;
 
   if (GTK_WIDGET_RC_STYLE (widget))
     gtk_widget_reset_rc_style (widget);
index 4e62cde6126b825420565e7ced038c411b1add97..1f90be99b305f2feae5e7030fb433ae455a69c02 100644 (file)
@@ -987,11 +987,13 @@ void
 gtk_window_set_title (GtkWindow   *window,
                      const gchar *title)
 {
+  char *new_title;
+  
   g_return_if_fail (GTK_IS_WINDOW (window));
 
-  if (window->title)
-    g_free (window->title);
-  window->title = g_strdup (title);
+  new_title = g_strdup (title);
+  g_free (window->title);
+  window->title = new_title;
 
   if (GTK_WIDGET_REALIZED (window))
     {
@@ -1077,13 +1079,13 @@ void
 gtk_window_set_role (GtkWindow   *window,
                      const gchar *role)
 {
+  char *new_role;
+  
   g_return_if_fail (GTK_IS_WINDOW (window));
 
-  if (role == window->wm_role)
-    return;
-
+  new_role = g_strdup (role);
   g_free (window->wm_role);
-  window->wm_role = g_strdup (role);
+  window->wm_role = new_role;
 
   if (GTK_WIDGET_REALIZED (window))
     gdk_window_set_role (GTK_WIDGET (window)->window, window->wm_role);